/*********************************************
This file is part of HIM.

HIM is a module of BCI++ framowork for the implementation of Brain Computer Interface systems.
HIM is intended for use with BCI++ only.

BCI++ is a project of the Sensibilab of Politecnico Di Milano

HIM is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as 
published by the Free Software Foundation, either version 3 of 
the License, or (at your option) any later version.

HIM is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU General Public License
and the GNU Lesser General Public License along with HIM.  
If not, see <http://www.gnu.org/licenses/>.
*************************************************************/

#ifndef H_c4mDatatype
#define H_c4mDatatype 1

typedef unsigned int      uint32;
typedef unsigned short    uint16;
typedef unsigned char     uint8;

typedef int      int32;
typedef short    int16;
typedef char     int8;

typedef double float64;
typedef	float  float32;

typedef unsigned int	c4mUint;
typedef int		c4mInt;
typedef char*		c4mPbyte;

/*!
This struct can be used to store a generic bidimensional matrix
*/
typedef struct c4mMatrix
{
	/*!
	Pointer to the data storage space
	*/
	void	*pdata;
	/*! 
	Number of rows
	*/
	c4mUint	rows;
	/*! 
	Number of colums
	*/
	c4mUint	cols;
	/*! 
	Size in bytes of one element
	*/
	c4mUint	esize;
	
} c4mMatrix;

#endif /* H_c4mDatatype */
